home *** CD-ROM | disk | FTP | other *** search
- property MasterLibraryFLD, LibraryProxyLST, TopShelfMouseLST, BotShelfMouseLST, PsyShelfMouseLST, NowBookMark, NowBookMovie, NowBkEnterMark
-
- on birth me
- set MasterLibraryFLD to "MasterBookListFLD"
- set temptext to field "ShelfMouseLSTs"
- set PsyShelfMouseLST to value(line 6 of temptext)
- BuildIndex(me)
- return me
- end
-
- on TopShelfClik me, MousH
- repeat with x = 1 to count(TopShelfMouseLST)
- set n to getAt(TopShelfMouseLST, x)
- if MousH < n then
- set BookNum to getPropAt(TopShelfMouseLST, x)
- put BookNum
- JumpShelf(me, BookNum)
- exit
- end if
- end repeat
- end
-
- on BotShelfClik me, MousH
- repeat with x = 1 to count(BotShelfMouseLST)
- set n to getAt(BotShelfMouseLST, x)
- if MousH < n then
- set BookNum to getPropAt(BotShelfMouseLST, x)
- JumpShelf(me, BookNum)
- exit
- end if
- end repeat
- end
-
- on PsyShelfClik me, MousH
- repeat with x = 1 to count(PsyShelfMouseLST)
- set n to getAt(PsyShelfMouseLST, x)
- if MousH < n then
- set BookNum to getPropAt(PsyShelfMouseLST, x)
- JumpShelf(me, BookNum)
- exit
- end if
- end repeat
- end
-
- on JumpShelf me, BookNum
- set NowBookMark to item 3 of line BookNum of field MasterLibraryFLD
- set NowBookMovie to NowBookMark
- set NowBkEnterMark to item 4 of line BookNum of field MasterLibraryFLD
- if NowBkEnterMark <> EMPTY then
- set NowBkEnterMark to NowBkEnterMark
- end if
- go(NowBookMark & NowBkEnterMark)
- end
-
- on JumpToBook me
- if NowBkEnterMark <> EMPTY then
- go(NowBkEnterMark, NowBookMovie)
- else
- go(1, NowBookMovie)
- end if
- end
-
- on BuildIndex me
- set MasterDB to field "MasterBookListFLD"
- set LibraryProxyLST to []
- set BookListTEXT to item 2 of line 1 of MasterDB & RETURN
- add(LibraryProxyLST, line 1 of MasterDB)
- repeat with x = 2 to the number of lines in MasterDB
- set titleString to item 2 of line x of MasterDB
- if titleString <> "IndexBook" then
- put titleString & RETURN after BookListTEXT
- add(LibraryProxyLST, line x of MasterDB)
- end if
- end repeat
- put BookListTEXT into field "IndexListFLD"
- end
-
- on IndexFieldClik me, MousLin
- if MousLin = -1 then
- exit
- end if
- if line MousLin of field "IndexListFLD" = EMPTY then
- exit
- end if
- set LineTX to getAt(LibraryProxyLST, MousLin)
- set NowBookMark to item 3 of LineTX
- set NowBookMovie to NowBookMark
- set NowBkEnterMark to item 4 of LineTX
- if NowBkEnterMark <> EMPTY then
- set NowBkEnterMark to NowBkEnterMark
- end if
- go(NowBookMark & NowBkEnterMark)
- end
-